package com.shop.entity;

import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import java.io.Serializable;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 文章 实体类。
 *
 * @author 彭新才
 * @since 2024-10-15
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Schema(description = "文章")
@Table(value = "shop_article")
public class ShopArticle implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 自增id
     */
    @Id(keyType = KeyType.Auto)
    @Schema(description = "自增id")
    private Long id;

    /**
     * 标题
     */
    @Schema(description = "标题")
    private String title;

    /**
     * 描述
     */
    @Schema(description = "描述")
    private String describe;

    /**
     * 文章分类
     */
    @Schema(description = "文章分类")
    private Long articleCategoryId;

    /**
     * 标题颜色
     */
    @Schema(description = "标题颜色")
    private String titleColor;

    /**
     * 跳转url地址
     */
    @Schema(description = "跳转url地址")
    private String jumpUrl;

    /**
     * 是否启用（0否，1是）
     */
    @Schema(description = "是否启用（0否，1是）")
    private Integer isEnable;

    /**
     * 内容
     */
    @Schema(description = "内容")
    private String content;

    /**
     * 封面图片
     */
    @Schema(description = "封面图片")
    private String cover;

    /**
     * 图片数据（一维数组json）
     */
    @Schema(description = "图片数据（一维数组json）")
    private String images;

    /**
     * 图片数量
     */
    @Schema(description = "图片数量")
    private Integer imagesCount;

    /**
     * 访问次数
     */
    @Schema(description = "访问次数")
    private Long accessCount;

    /**
     * 是否首页推荐（0否, 1是）
     */
    @Schema(description = "是否首页推荐（0否, 1是）")
    private Integer isHomeRecommended;

    /**
     * SEO标题
     */
    @Schema(description = "SEO标题")
    private String seoTitle;

    /**
     * SEO关键字
     */
    @Schema(description = "SEO关键字")
    private String seoKeywords;

    /**
     * SEO描述
     */
    @Schema(description = "SEO描述")
    private String seoDesc;

    /**
     * 添加时间
     */
    @Schema(description = "添加时间")
    private Long addTime;

    /**
     * 更新时间
     */
    @Schema(description = "更新时间")
    private Long updTime;

}
